package com.feemanage.domain.bo;

import com.common.validate.add;
import com.common.validate.edit;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.framework.config.BigDecimalSerializer;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotNull;
import java.math.BigDecimal;

@Data
public class PayoutDetailsBo {

    @ApiModelProperty("报销科目编号")
    private String payoutSubjectName; //报销科目编号

    @ApiModelProperty("报销科目id")
    private String payoutSubjectId;//报销科目id

    @ApiModelProperty("预算科目名称")
    private String budgetSubjectName; //预算科目

    @ApiModelProperty("预算科目id")
    private String budgetSubjectId;//预算科目id

    @ApiModelProperty("预算余额")
    @JsonSerialize(using = BigDecimalSerializer.class)
    private BigDecimal availableFee;//预算余额

    @ApiModelProperty("每项报销金额")
    @NotNull(message = "每项报销金额不能为空", groups = {add.class, edit.class})
    @JsonSerialize(using = BigDecimalSerializer.class)
    private BigDecimal payoutFee; //每项报销金额

    @ApiModelProperty("经费来源 ,1-专项，2配套")
    private String feesource; //经费来源

    @ApiModelProperty("从表id")
    @NotNull(message = "从表id不能为空", groups = {edit.class})
    private String id; //从表id;

    @ApiModelProperty("项目id")
    private String projectId; //项目id;

    @ApiModelProperty("项目分类")
    private String projectClass; //项目分类
}
